package gameOnline.game;

import java.util.ArrayList;

/**
 * Classe abstraite représentant un jeu. Sera utilie si on décide d'implémenter plusieurs jeu.
 * 
 * @author user
 */
public abstract class Game {
    
    protected EntryType adversaryEntry;
    protected Entries entries = new Entries();

    /**
     * Obtiens le résultat d'une partie d'un jeu.
     *
     * @param entry l'entrée sélectionnée par le joueur.
     * @return le résultat de la partie.
     */
    public abstract ResultType getResult(EntryType entry, EntryType entryAdversary);

    /**
     * Obtiens les entrées possibles pour un jeu.
     *
     * @return les entrées possibles pour un jeu.
     */
    public ArrayList<EntryType> getEntries() {
        return entries.getEntries();
    }

    /**
     * Obtiens l'entrée sélectionnée par l'ordinateur.
     *
     * @return l'entrée sélectionnée par l'ordinateur.
     */
    public EntryType getAdversaryEntry() {
        return adversaryEntry;
    }
}
